home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 4 / CU Amiga Magazine's Super CD-ROM 04 (1996)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1996-11].iso / magazine / psion / utils / jbfnd27b.lzx / jbfind.txt < prev   
Text File  |  1996-06-17  |  16KB  |  421 lines

  1.                                 JBFind
  2.                           (formerly Search)
  3.                              Version 2.7
  4.                            (c)JBSoft 1992-6
  5.                  with loads of help from Tom Dolbilin
  6.  
  7. JBFind is a program that will search for files or text/hex within
  8. files, optionally down directory trees, across drives and within files
  9. that are open. Please report any bugs or funnies as soon as possible
  10. so that I can sort out any teething problems. Please not that all the
  11. code was written by me - Tom is the ideas man on this project. If you
  12. have any problems please direct them my way.
  13.  
  14. The program is installed in the usual way by copying it to an \APP\
  15. directory using your preferred Link program, from the System screen,
  16. pressing Psion-I and selecting JBFIND.OPA. If you do not wish to use
  17. the program as an Application but as an .OPO file, simply place it in
  18. an \OPO\ directory and rename it to JBFind.OPO. It will then run just
  19. like any other OPO file and will appear under the RunOPL icon.
  20.  
  21. The first options given when running the program is whether to search
  22. for a file, to search within files or go straight to the list viewer.
  23. Next, either the filename is prompted for, or the text to search for
  24. within files. If Search Within was selected then an option for case
  25. sensitivity is also available. Filenames permit wildcards (e.g.
  26. AGENDA.*).
  27.  
  28. If you require a Hex search then input the Hex digits preceded by the
  29. '$' character and make sure that each digit comprises of two
  30. characters (e.g. $AB010020 would mean search for the digits AB 01 00
  31. 20). The Hex stream will be converted to ASCII characters and the
  32. search will actually look for that string. You may keep a space
  33. between the hex characters if you wish but you should only use '$' at
  34. the start of the search string and _not_ before each Hex value.
  35.  
  36. The drives to search are also selected at this stage - the choices are
  37. individual (A/B/M/ROM), selected (Choose), all (Every) drives or down
  38. a directory tree (Tree). The program is intelligent and only offers
  39. drives that exist. To select Choose or Tree select the option, keep
  40. the cursor on that line and press Enter.
  41.  
  42. Although ROM:: has been included it is only implemented as a stand-
  43. alone search and cannot be included with other drives at present.
  44.  
  45. If Choose is selected an additional dialog is given - push the buttons
  46. of the drives you wish to include in the search (a tick will appear to
  47. show selection). The buttons act as a toggle so deselection is also
  48. possible. Once the drive selection has been completed, press Escape
  49. and you will return to the previous dialog. Press Enter and the search
  50. will start.
  51.  
  52. If the Tree option is chosen a dialog will be shown which allows a
  53. directory and drive to be chosen. This will be the start point for the
  54. search. To choose a directory you use Tab to enter the file system and
  55. then navigate to the desired start point. Once there, press Enter and
  56. the dialog will be automatically filled in.
  57.  
  58. Sound can be chosen on the main dialog - the options are No/Yes or
  59. just beep On completion of the search - the default is sound off (No).
  60. If enabled (Yes), the computer will beep when files are found or if
  61. there is a problem.
  62.  
  63. Closing Apps
  64. ------------
  65. If searching within files has been selected then an option is included
  66. to enable the search of all files or only closed files. There are
  67. actually three options - All / Only Closed / Partial. If the All
  68. option is selected then all open Applications are closed before the
  69. search and opened up afterwards (if possible, any unsaved alterations
  70. will be saved when closing). Partial will only close those
  71. applications that have associated datafiles (e.g. Data, Agenda and
  72. Word).
  73.  
  74. There is a limit as to how files can be opened up so, if you are in a
  75. Memo within the Agenda, after the search has ended you will be in the
  76. Agenda proper rather than the Memo. Also, with the Agenda, Data and
  77. other such files, although the application will be opened, you will
  78. not necessarily end up at the point at which you left it.
  79.  
  80. In the Agenda the program will attempt to open you in the view (e.g.
  81. Day or Week) mode you left the Agenda in but, if your datafile takes
  82. more than 5 seconds to load you will end up in the Day mode regardless
  83. of which mode you were in originally.
  84.  
  85. I have tried to keep the various guises of Word correct (e.g. Program
  86. and Word) but there may be occasions when the file is opened in the
  87. wrong mode. If you come across this please let me know and I will
  88. endeavour to rectify the situation. At present, it seems to work in
  89. every mode that I use.
  90.  
  91. If only Closed or Partial files are chosen then any files that could
  92. not be searched will be displayed briefly as the program runs. When
  93. the option to save the results to a file has been taken then these
  94. unchecked files are also written to the file at the end of the list of
  95. found files.
  96.  
  97. Filenames that match or contain the text being searched for are
  98. displayed in a window as the search progresses. It is possible to
  99. terminate the search early by pressing Escape.
  100.  
  101. When the search is completed the list of files found or files that
  102. contained the search string are displayed in a simple viewer. Use the
  103. cursor controls to move around this list. A menu is available for
  104. additional options at this stage.
  105.  
  106. N.B. If Word files are password protected then JBFind will fail to
  107.      find the data - this is not a fault of JBFind but due to Word
  108.      encryption which is activated when Password protection is used.
  109.  
  110. Search Data
  111. -----------
  112. If search within was used then, on pressing Psion-I, some details of
  113. the find are shown. This shows where the string was found within the
  114. file and the part of the file that included the search string. Psion-I
  115. is a toggle - press it again to remove the information.
  116.  
  117. New Search
  118. ----------
  119. A new search can be started by pressing Psion-F. This option will
  120. ignore all currently found data and start again from scratch.
  121.  
  122. Narrow Search
  123. -------------
  124. It is possible to narrow down the search once the initial search has
  125. ended by pressing Psion-N. This will prompt for a new search string
  126. and the options to search For or In a file. If In a file is selected
  127. then, if the files are not already closed, an option will be given to
  128. search within only closed files or all files. This works in the same
  129. way as the main search routine. An additional option is to deselect
  130. files found so the list shown after the Narrow search will show less
  131. the files found on the last search (e.g. If original list was a file
  132. search for *.OP? then an excluding search of *.OPL will leave just OPO
  133. and OPA files).
  134.  
  135. N.B. The list of files previously found is not will not normally kept
  136.      - although, if a narrow search does not find any matching files,
  137.      the previous list is shown with the comment that no files were
  138.      found.
  139.  
  140.  
  141. Launch file
  142. -----------
  143. Psion-L (or Enter) will attempt to launch the highlighted file. When a
  144. file is launched and the Application is a built-in one, then the Find
  145. routine for that application should be accessed (all things being
  146. equal - they very rarely are), leaving you at the find position of the
  147. data within the file.
  148.  
  149. You can also configure the program to open other applications using
  150. Psion-C to configure a database. The database used is the same as that
  151. for JBTree so, if you also use that program, any apps configured for
  152. use in JBTree will be automatically configured for JBFind. If the
  153. datafile doesn't already exist then it is automatically created on the
  154. drive of your choice in an \APP\JBTREE\ directory.
  155.  
  156. There are four fields in the file:
  157.  
  158. 1. Extension      - this is the extension the launch utility will use
  159.                     to determine which database record in JBTREE.DBF
  160.                     to use. When launching a file the database is
  161.                     searched for an extension which matches that of
  162.                     the file to launch.
  163. 2. Run filename   - this is the program to run in conjunction with the
  164.                     file selected (e.g. WRD extension should use
  165.                     ROM::WORD.APP). Any OPO or OPA file should use
  166.                     ROM::SYS$PRGO.IMG.
  167. 3. Extra filename - This field is for use with OPA files that use file
  168.                     lists (e.g. Notepad). If this field is used then
  169.                     it is probable that the Run filename will be
  170.                     ROM::SYS$PRGO.IMG.
  171. 4. Alias Info     - currently the only program that would use this
  172.                     field is WORD unless there is a 3rd party
  173.                     application of which I am unaware.  The two .ALS
  174.                     files (PROGRAM and SCRIPT) in the ROM should not
  175.                     be called explicitly - they are loaded as required
  176.                     according to the alias data. Briefly:
  177.                     The first letter specifies Program or Script
  178.                     (either O or S) - the second letter specifies if
  179.                     RUN is allowed and the next three letters give
  180.                     both the top directory any compiled programs are
  181.                     placed in and also the files extension.
  182.                     A text editor can be started by using the alias
  183.                     character of $.
  184.  
  185. View in Hex Viewer
  186. ------------------
  187. Psion-H will take you to a Hex viewer and, eventually, the search
  188.                     string will be found in this hex viewer. Although
  189.                     this viewer has been taken from JBTree, I have
  190.                     disabled the Edit function so this guise will only
  191.                     act as a viewer. To exit the viewer use Psion-X.
  192.  
  193. Delete file
  194. -----------
  195. Psion-D will produce a dialog box which will enable you to delete the
  196.                     currently highlighted file. Be careful with this
  197.                     command as there is no way back once 'Y' is
  198.                     pressed as a response to whether you wish to
  199.                     delete the file or not.
  200.  
  201. Exclude File
  202. ------------
  203. Psion-R will remove the currently highlighted file from the list (but
  204.                     will not delete the file).
  205.  
  206. Sort List
  207. ---------
  208. An option to sort the list of found files is available -  use Psion-S
  209.                     to access this option. It is possible to select a
  210.  
  211.                     sort on the Filename, the Extension to the file,
  212.                     the Directory and the Drive.
  213.  
  214. Save List
  215. ---------
  216. The list of found files can be saved to a text file using Shift-Psion-
  217.                     S. The default file is M:\FIND.DAT but can be
  218.                     altered to anything you wish.
  219.  
  220. Load List
  221. ---------
  222. A previously saved list can be reloaded using the command Shift-Psion-
  223.                     L. Before loading the file this checks that the
  224.                     list is one created earlier with JBFind otherwise
  225.                     an error is displayed.
  226.  
  227. Delete List file
  228. ----------------
  229. Shift-Psion-D will delete a previously saved list of found files. This
  230.                     command works in exactly the same way as Psion-D
  231.                     but starts off by defaulting to M:\FIND.DAT.
  232.  
  233. Other keys
  234. ----------
  235. Psion-A will produce an About screen. To terminate the program use
  236.                     Psion-X.
  237.  
  238. Limitations
  239. -----------
  240. There are limitations - these are the one's I've thought about!
  241.  
  242.                   999 - Maximum Finds per search
  243.                   254 - Maximum Search string length
  244.  
  245.                   56k - RAM required for File search (approximate)
  246.                   68k - RAM required for In File search (approximate)
  247.      plus there is a requirement for RAM for filename storage - this
  248.      is not predictable.
  249.  
  250. If you come across any other limitations please let me know and I'll
  251. adjust the program or the documentation accordingly.
  252.  
  253. Miscellaneous Information
  254. -------------------------
  255. One file may be temporarily created during the operation of this
  256. program - in the Root directory of the M: (Internal) drive. This is to
  257. keep a note of the files that have been closed when searching all
  258. files (this file is not created unless the Search All Files option is
  259. selected). This filename is SELECT.DAT. If the program crashes this
  260. file may still exist but can be deleted with no problems.
  261.  
  262. I hope this program is what people want - if not, please let me know
  263. and I'll see what I can do...
  264.  
  265. Thanks
  266. ------
  267. My profound thanks to Tom Dolbilin for his continued assistance with
  268. my programming - his comments are what make my programs pretty and
  269. usable. The code was written by me - the interface look is primarily
  270. Tom's. Any remaining bugs are mine alone (I collect them you know
  271. <g>). Don't blame Tom for anything - blame me!
  272.  
  273. Thank you also to Ian Greaves who suggested the Hex view.
  274.  
  275. Version 2.0 (4/4/94)
  276. -----------
  277. 1st public release
  278.  
  279.  
  280.  
  281. Version 2.1 (5/4/94)
  282. -----------
  283. Added option for Case sensitive searching within files.
  284. Added option to switch off beeps when searching.
  285. Now finds all files as specified rather than just the first one in any
  286. directory.
  287. Fixed Search within files so that it actually works properly now!
  288. Reduced RAM overhead needed to run the file.
  289. More rigorous checking of available drives whilst the program is
  290. running.
  291.  
  292. Version 2.2 (13/4/94)
  293. -----------
  294. Rewrote the search routines to account for Data files and to clean up
  295. the wildcard searches.
  296. Added an internal viewer for matches.
  297. Added information on finds within files.
  298. Added ability to launch some files.
  299. Added ability to have the launched files display the find (internal
  300. applications only).
  301. Added ability to delete a file.
  302. Now can start a new search from within the program.
  303. Allows for a narrowing of the search using only found files.
  304.  
  305. Version 2.3 (8/6/94)
  306. -----------
  307. Missed Psion-S from documentation with version 2.2.
  308. Changed interface to pretty things up a bit.
  309. Changed display of Search Information within a file.
  310. Save to file option deleted from opening dialog - only available on
  311. Menu at end of search now.
  312. Able to select drives for searching independently now.
  313. Load file list added to Menu.
  314. Sort a list now available.
  315. Exclusion options added to the Narrow Search.
  316. Remove a file (without deleting it) from the list added.
  317. Ability to go straight to View List screen without search added.
  318. Tries to open Agenda in the view mode that was current when closed.
  319. Added ability to search a tree.
  320. Added option to delete a saved file list.
  321. Now opens up in the correct Word mode after closing down files.
  322.  
  323. Version 2.3a (11/6/94)
  324. ------------
  325. Fixed 'terminal' bug in search within.
  326.  
  327. Version 2.4 (1/7/94)
  328. -----------
  329. Spy now reports the program as JBFind (not SYS$PRGO)
  330. Added Hex search.
  331. Added search of ROM drive.
  332. Fixed not searching Directories with extension (it treated them as
  333. files)
  334. Fixed program thinking Files with no extension were directories!
  335. Fixed problem of starting a new search producing an error
  336. occasionally.
  337.  
  338. Version 2.4a (26/9/94)
  339. ------------
  340. Fixed problem of saved list not loading if it was a file list rather
  341. than a within file list.
  342.  
  343. 21/1/95
  344. Renamed from Search to JBFind.
  345.  
  346. Version 2.4b (26/1/95)
  347. ------------
  348. Fixed problem of application hanging when closing other applications.
  349.  
  350.  
  351. Version 2.5 (1/2/95)
  352. -----------
  353. Added Hex viewer.
  354.  
  355. Version 2.6
  356. -----------
  357. Added ability to launch non-internal applications.
  358. Improved closedown and re-opening of programs erring on the side of
  359. caution.
  360.  
  361. Version 2.7b
  362. ------------
  363. Improved launching of non-internal applications.
  364. Fixed a couple of bugs to do with launching.
  365.  
  366. Contact
  367. -------
  368. John Boyce
  369. CompuServe: 100014,1240
  370. CIX/Internet: jboyce@cix.compulink.co.uk
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.